package com.aseo.model.dao;

import java.io.Serializable;
import java.util.List;
import java.util.Set;

import javax.validation.ConstraintViolation;

public interface Dao {

	public void persist(Object entity);

	public void persist(Object[] entities);

	public <T> List<T> find(Class<T> entityClass);

	public <T> T load(Class<T> entityClass, Serializable id);

	public <T> T get(Class<T> entityClass, Serializable id);

	public <T> List<T> find(String hql);

	public <T> Set<ConstraintViolation<T>> validate(T entity);

}